package com.zhixiang.xaec.action.safebase.equipments;

import java.util.List;

import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;

import com.google.gson.Gson;
import com.zhixiang.core.command.QueryFilter;
import com.zhixiang.core.entity.TreeObj;
import com.zhixiang.core.util.BeanUtil;
import com.zhixiang.core.util.YearGridCrud;
import com.zhixiang.core.web.action.BaseAction;
import com.zhixiang.xaec.entity.safebase.equipments.Equipment;
import com.zhixiang.xaec.service.safebase.equipments.EquipmentService;

@Controller
@Scope("prototype")
public class EquipmentAction extends BaseAction{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	private Equipment equipment;
	@Autowired
	private EquipmentService equipmentService ;
	public Equipment getEquipment() {
		return equipment;
	}
	public void setEquipment(Equipment equipment) {
		this.equipment = equipment;
	}
	public String save() {
		try {
		if(equipment.getId()!=null){
			Equipment mf=equipmentService.get(equipment.getId());
			BeanUtil.copyNotNullProperties(mf, equipment);
			equipmentService.save(mf);
		}else{		
			equipmentService.save(equipment);
		}
			
		} catch (Exception e) {
		    e.printStackTrace();
			setMsg("保存失败");
			setSuccess(false);
		}

		  return SUCCESS;
	}


    public String delete()
    {
        try
        {
        String[] ids = getRequest().getParameterValues("ids");
        equipmentService.delete(ids);
        }
        catch (Exception e)
        {
            setSuccess(false);
            setMsg("删除失败");
        }

        return SUCCESS;
    }

    public String get()
    {
    	String id=getRequest().getParameter("id");
        if (StringUtils.isNotEmpty(id))
        {
            setResult(equipmentService.get(Long.valueOf(id)));
        }
        return SUCCESS;
    }
    
    public String list()
    {
        QueryFilter localQueryFilter = new QueryFilter(getRequest());
        List<Equipment> localList =equipmentService.getAll(localQueryFilter);
        setTotalCounts(localQueryFilter.getPagingBean().getTotalItems());
        setResult(localList);
        return SUCCESS;
    } 
    
    //实现年份数的方法
    public String treeLoad(){
        List<TreeObj> treeList=YearGridCrud.treeLoad();
        if(treeList!=null){
            outJsonString(new Gson().toJson(treeList));
        }       
        return SUCCESS;
    }
}
